(1) Field of the Invention
The present invention relates to image decoding methods of decoding multiview video, image decoding apparatuses which decode multiview video, image coding methods of coding multiview video, and image coding apparatuses which code multiview video.
(2) Description of the Related Art
Multiview Video Coding (MVC) standard is defined as an extension of ISO/IEC 14496-10 Advanced Video Coding (AVC) standard. The profiles created in the MVC standard are designed to be backward compatible to some of the profiles defined in the AVC standards. In another words, the decoders or players conforming to the new MVC profiles are capable of decoding some of bitstreams conforming to the AVC profiles. Vice versa, legacy decoders of the AVC profiles (particularly, the High profile) should also decode at least one of the views in bitstreams conforming to the new MVC profiles.
In the Multiview Video Coding (MVC) standard, as a coded base view is required to be compatible with the profiles defined by the AVC standard, a legacy decoder conforming to the High Profile of the AVC standard should be capable of decoding the base view in an MVC bitstream conforming to the MVC profiles. The coded view is contained in Network Abstraction Layer (NAL) units. NAL units of different types are differentiated by NAL unit type values. A non-base view is contained in NAL units having a NAL unit type value reserved in the previous versions of the AVC standard. Thus, the NAL units should be ignored by a legacy high profile decoder.
However, in the MVC standard, a particular NAL unit called a prefix NAL unit is required to be located before each of NAL units for a coded base view and sent together with the NAL unit. This prefix NAL unit has a NAL unit type value of 14 and is reserved in the previous versions of the AVC standard. A NAL unit for a coded base view shall either have a NAL unit type value of 5 or 1.
The prefix NAL unit contains additional parameters that are located in the MVC extension part of a NAL unit header. These parameters are associated with a base view, and are used in the encoding and decoding processes of a corresponding non-base view. FIG. 23 is a diagram on the location of NAL unit header MVC extension syntaxes. The parameters in the NAL unit header MVC extension part include a non-IDR flag (non_idr_flag), a priority ID (priority_id), a view ID (view_id), a temporal ID (temporal_id), an anchor picture flag (anchor_pic_flag), an inter-view prediction flag (inter_view_flag), and a reserved 1-bit (reserved_one_bit). The reserved 1-bit (reserved_one_bit) has a value, and is not used for the encoding and decoding processes of a non-base view.
Patent Reference 1 (International Patent Application Publication No. WO2007/126509) discloses a technique of coding multiview video using NAL units.
Ideally, legacy AVC decoders should ignore NAL units having NAL unit type values defined as values reserved in the previous versions of the AVC specification. Legacy AVC decoders should decode only the NAL units for base views and reconstruct only the base views.
However, not all decoders in the market will ignore these NAL units having reserved values. A compressed base view and a compressed non-base view can be separated using different stream identifiers. However, as it is required to include prefix NAL units associated with the compressed base view, some decoders in the market cannot decode the base view due to the prefix NAL units. This creates problems in supporting backward compatibility of compressed MVC streams on legacy AVC decoders.
In addition, a prefix NAL unit must be located before each of the NAL units of a base view. Accordingly, it is not easy to add a new view to a bitstream that represents only a single view and does not include prefix NAL units. In other words, it is difficult to modify a bitstream generated based on a conventional standard to a bitstream representing a multiview video. Therefore, it was difficult to utilize a conventional bitstream generated based on such a conventional standard as a view in a multiview video.
Considering this, the present invention has an object to provide image coding methods allowing coding of multiview video and/or image decoding methods allowing decoding of multiview video even when no prefix NAL units are used.